home *** CD-ROM | disk | FTP | other *** search
/ Apple Reference & Present…nuary (Partner) - Disc 2 / The Apple Reference and Presentations Library (Disc 2)(January 1994).iso / Graphisoft / US English / ArchiCAD / ArchiCAD 4.5-68K / ArchiCAD Library / 08 Doors & Windows / Window Macros / half_frame < prev    next >
Text File  |  1994-04-08  |  1KB  |  64 lines

  1. !half_frame  /rewritten 2/17/94/***VL/
  2. !a, b, frame width, frame thickness,
  3. ! glass material, resolution
  4.  
  5. r=f                                  !***resolution
  6. s=360/r                          !***rotation angle 
  7. j=a/2
  8. g=1.5*c                           !***frame#2 thickn. = 0.5*frame#1 thickn.
  9. k=j-c
  10. p=j-g
  11. l=b-c
  12. q=b-g
  13. x=k-sqr(k*k-c*c)           !***frame#1 internal edge distance(-Δx)
  14. m=k-x
  15. y=p-sqr(p*p-g*g)           !***frame#2 internal edge distance(-Δx)
  16. n=p-y
  17.  
  18. for v=0 to r/2
  19.   w=v*s
  20.   Put j*cos(w), b*sin(w), 13+64
  21. next v
  22.   Put m,c,15
  23. for v= 1 to r/2-1 step 1
  24.   w=v*s
  25.   Put k*cos(w), l*sin(w), 13+64
  26. next v
  27.   Put-m,c,15
  28.  
  29. prism_  2+nsp/3,d,                 !***frame#1 (external)
  30.   get(nsp/2),
  31.   j,0,-1,
  32.   use(nsp),
  33.   m,c,-1
  34.  
  35.   Put n,g,15
  36. for v= 1 to r/2-1 step 1
  37.   w=v*s
  38.   Put p*cos(w), q*sin(w), 13+64
  39. next v
  40.   Put-n,g,15
  41.  
  42. addz d/4
  43. prism_  2+nsp/3,d/2,              !***frame#2 (internal)
  44.   get(nsp/2),
  45.   m,c,-1,
  46.   get(nsp),
  47.   n,g,-1
  48. body 3
  49. if e=0 then 20                         !***w/o glass
  50. Put n,g,15
  51. for v= 1 to r/2-1 step 1
  52.   w=v*s
  53.   Put p*cos(w), q*sin(w), 13+64
  54. next v
  55.   Put-n,g,15
  56. material e
  57. addz d/4-0.002
  58. prism_  1+nsp/3,0.004,           !***glass
  59.   get(nsp),
  60.   n,g,13
  61. body 3
  62. 20:
  63. end
  64.